<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2016/5/11
 * Time: 9:40
 */
    header('Content-type:text/html;charset=utf-8');
//    function &max1($num1,$num2){
//        if($num1>$num2){
//            return $num1;
//        }else{
//            return $num2;
//        }
//
//    }
//    $a=&max1(10,20);
//    echo $a;
//    function max1($num1,$num2){
//        if($num1>$num2){
//            return $num1;
//        }else{
//            return $num2;
//        }
//
//    }
////    $a=max1(10,20);
//    echo max1(10,20) ;

    //不直接调用函数，而是通过PHP的内置函数call_user_func_array()去调用函数
    //语法：call_user_func_array('函数','参数数组')
//      function fun (){
//        $array = func_get_args();
//        if(count($array) == 0){
//            echo '你好菜！';
//            return;
//        }
//        $a=$array[0];
//        for($i=1,$j=count($array);$i<$j;$i++){
//             $a.='+'.$array[$i];
//        }
//        echo $a;
//    };
//    fun();
//    fun(1,2,3,4);
//    call_user_func_array('fun',array('a','d','c','d'));

    //__FUNCTION__  获取当前函数的名称
//    function fun1(){
//        echo __FUNCTION__;
//    };
//    fun1();

    //function_exists — 如果给定的函数已经被定义就返回 TRUE
//    if(function_exists('fun1')){
//        echo 5555;
//    };

    //动态创建函数
    //语法：create_function ( 参数字符串 ,函数体 )
//    $str=create_function('$a','echo \'你好\'.$a;');
//    $str('立白');

    //多维数组取值问题
//    $a=array(434343,'adafd',array('afafa','423525',array('faf','43534ad')));
//    echo $a[2][2][1];

    // each()函数
//    $a=array('name'=>'成龙','age'=>'12','height'=>'75');
//    $b=each($a);
//    var_dump($b);
//    echo '<hr>';
//    echo $b[0].'-'.$b[1];
//    echo $b[0].'-'.$b[1];
//    next($b);
//    echo $b[0].'-'.$b[1];
//    echo key($a).'-'.current($a);
    //当第二次遍历的时候要复位指针
//    $a=array('name'=>'成龙','age'=>'12','height'=>'75');
//    while($b=each($a)){
//        echo  $b[0].'-'.$b[1].'<br>';
//    }
//    echo '<hr>';
//    reset($b);
//    while($b=each($a)){
//        echo  $b[0].'-'.$b[1].'<br>';
//    }

//    list()用来将索引数组给一组变量赋值，
//    $a=['adfa','4fwf',43534];
//    list($noe,$fecd,$affa)=$a;
//    echo $noe;

    //each()+while()+list()
//    $a=array('name'=>'李商隐','age'=>'18',);
//    while(list($node,$mode)=each($a)){
//        echo $node.'-'.$mode,'<br>';
//    }

    ///指针的练习
    $a=array('ada',224,36563,'rsfasf','htew3');
    echo key($a).'-'.current($a),'<br>';
    next($a);
    echo key($a).'-'.current($a),'<br>';
    end($a);
    echo key($a).'-'.current($a),'<br>';
    prev($a);
    echo key($a).'-'.current($a),'<br>';
    reset($a);
    echo key($a).'-'.current($a),'<br>';


?>